package demo2;

//public class Text {
//    public static void main(String[] args) {
//        //向上传递————直接赋值
//        Animal animal=new Dog("往往",12);
//        animal.eat();
//    }
//}

//public class Text {
//    public static void func(Animal animal){
//        animal.eat();
//    }
//    //向上传递：————方法的传参
//    public static void main(String[] args) {
//        Dog dog=new Dog("黄欢",12);
//        func(dog);
//
//        Cat cat=new Cat("晃晃",1);
//        func(cat);
//
//    }
//}


//public class Text {
//    //向下传递
//    public static void main(String[] args) {
//        Animal animal=new Dog("嘻哈",10);
//        Dog dog=(Dog)animal;
//        dog.eat();
//    }
//}


//public class Text {
//    //向下传递：
//    public static void main(String[] args) {
//        Animal animal=new Dog("韩欢",2);
//        Dog dog=(Dog)animal;
//        dog.brak();
//
//        Animal animal2=new Cat("小小",1);
//        //animal2 是否引用了 Dog 这个对象
//        if(animal2 instanceof Dog) {
//            Dog dog2=(Dog)animal2;
//            dog2.brak();
//        }
//        else {
//            System.out.println("animal2 instanceof Dog is not!!!");
//        }
//    }
//}


//圈复杂度 ———— if-else

//public class Text {
//    public static void main(String[] args) {
//        Cat cat=new Cat("小小",1);
//        Dog dog=new Dog("缓缓",3);
//        Bird bird=new Bird("霞姐",2);
//        //使用数组
//        String[] animals={"cat","dog","bird"};
//        for(String animal:animals)
//        {
//            if(animal.equals("cat"))
//            {
//               cat.eat();
//            }
//            else if(animal.equals("dog")){
//                dog.brak();
//            }
//            else
//            {
//                bird.fly();
//            }
//        }
//    }
//}


//用多态使代码更简单
//public class Text {
//    public static void main(String[] args) {
//        Cat cat=new Cat("llala",1);
//        Dog dog=new Dog("于洋",1);
//        Bird bird=new Bird("幻化",2);
//        Animal[] animals={dog,dog,cat,bird,cat,bird,dog};
//        //创建一个Animal对象的数组
//        for(Animal animal:animals){
//            animal.eat();//动态绑定
//        }
//    }
//}



